With the availability of Internet and networking technology, businesses are able to use network communication as a means of distributing information about their businesses, advertising, and providing services to customers and potential customers. Not only can businesses distribute information and provide services over the Internet, but businesses may also use networked applications in order to provide external access to information within their company allowing efficient cooperation between co-workers, business units, and customers.
Networked applications can use a client/server or web application architecture to handle the communication between a provider of services called a server and a user of the services called a client. Whether the network applications on the networked system are used for internal use or available via the Internet, the operation of the applications which run upon the system are often tested to ensure that the applications function properly. Not only should the applications and systems respond properly to individual requests for information, but any network-available resource should also be capable of operating properly when being subjected to many simultaneous requests or multiple requests within a short duration of time. In addition, the speed with which the system, such as a web server, responds to requests as the number of requests or load upon the system increases may also be measured. Testing to determine the ability of a network system to respond under increasing amounts of traffic is referred to as load testing.
Load testing tools are often based on the concept of recording a client's activity for an application being tested, and then subsequently simulating load situations by duplicating and concurrently ‘replaying’ the activities to the server as if the activities were from real users. Some load testing tools enable the running of lightweight ‘virtual users’ (VUsers) or virtual clients in such a way that the server cannot distinguish between the virtual client and a real user running the application. The load testing tool may perform the load simulation by running multiple concurrent VUsers on one machine.